A network may include the interconnection of multiple personal electronic media devices. The various media devices may be networked together in order to share data, increase convenience, and make fuller use of each element. For example, certain devices within a home may be connected together. In such an environment, there are multiple potential sources and users of streaming digital media content for audio, video, gaming, and other uses.
When transmitting a data stream through such an interconnection network, it may be desirable to reserve bandwidth for the flow in order to maintain a high quality of service. For example, when delivering a data stream over an Ethernet-based network with other traffic, the total bandwidth capacity may be exceeded, resulting in degraded performance for all traffic sources, including the data stream. If bandwidth reservation is implemented, the data stream generally would only be admitted to the network if there was sufficient bandwidth to, for example, guarantee that no data packets will be lost due to contention for network resources.
However, conventional networking equipment, particularly items targeted to the consumer market, does not generally include support for bandwidth reservation. Further, conventional bandwidth reservation schemes that exist have limitations in operation. Conventional schemes typically require all network entities to implement the scheme in order for it to work, i.e., there usually are no partial failure modes or mechanisms for gracefully reacting to traffic that falls outside of active reservations.
In addition, the reservation of bandwidth typically requires either a centralized arbiter (or server) with knowledge of the network topology that is responsible for servicing reservation requests, or a message exchange protocol between the reserving entities that provides the equivalent functionality of the centralized arbiter in a distributed fashion. The conventional approaches have drawbacks that limit their usefulness and may make implementation impractical in a lightweight network environment. There generally is no standard means to determine the network topology that is in place, creating difficulty in a network in which the topology may not be known. In a system utilizing an arbiter, the availability of the arbiter must be guaranteed to operate, and mechanisms must be provided for handling ill-behaving entities that do not properly relinquish reservations, such as due to a power failure. In a distributed scheme, there is added complexity in that all the communicating entities need to manage the reservation protocol and distributed reservation state. Both such schemes generally rely on assistance from the network infrastructure, such as switches and routers, to obtain capacity information or enforce reservations. Neither of such approaches would generally provide a mechanism for dealing with traffic that falls outside of any established reservation.